package com.lframework.xingyun.basedata.service.member;

import com.lframework.starter.web.core.components.resp.PageResult;
import com.lframework.starter.web.core.service.BaseMpService;
import com.lframework.xingyun.basedata.bo.member.QueryMemberLevelDetailBo;
import com.lframework.xingyun.basedata.entity.MemberLevelDetail;
import com.lframework.xingyun.basedata.vo.member.CreateMemberLevelDetailVo;
import com.lframework.xingyun.basedata.vo.member.QueryMemberLevelDetailVo;

/**
 * 会员等级生效明细 Service
 *
 * @author mos
 */
public interface MemberLevelDetailService extends BaseMpService<MemberLevelDetail> {

    /**
     * 查询列表
     * @return
     */
    PageResult<QueryMemberLevelDetailBo> query(Integer pageIndex, Integer pageSize, QueryMemberLevelDetailVo vo);

    /**
     * 创建默认会员等级生效明细
     * @param memberId 会员ID
     * @return 会员等级生效明细ID
     */
    String createDefault(String memberId);

    /**
     * 创建
     * @param vo
     * @return
     */
    String create(CreateMemberLevelDetailVo vo);

    /**
     * 自动生效会员等级明细
     * @param memberId 会员ID
     */
    void autoActivate(String memberId);
}
